html, address,
article,
aside,
blockquote,
body,
details,
dialog,
dd, div,
dl, dt, fieldset,
figcaption,
figure,
footer,
form,
frame, frameset,
h1, h2, h3, h4,
h5, h6,
header,
hgroup,
main,
nav,
noframes,
ol, p, ul, center,
dir, hr, menu, pre,
section,
object, svg { display: block }
math { display: inline-block; }
li              { display: list-item }
head, script    { display: none }
body            { margin: 8px }
h1              { font-size: 2em; margin: .67em 0 }
h2              { font-size: 1.5em; margin: .75em 0 }
h3              { font-size: 1.17em; margin: .83em 0 }
h4, p,
blockquote, ul,
fieldset, 
ol, dl, dir,
menu            { margin: 1.12em 0 }
h5              { font-size: .83em; margin: 1.5em 0 }
h6              { font-size: .75em; margin: 1.67em 0 }
h1, h2, h3, h4,
h5, h6, b,
strong          { font-weight: bold; }
blockquote      { margin-left: 40px; margin-right: 40px }
i, cite, em,
var, address    { font-style: italic }
pre, tt, code,
kbd, samp       { font-family: monospace }
pre             { white-space: pre }
button, textarea,
input, select, openhtmltopdf-combo   { display: inline-block; font-family: sans-serif; font-size: 10pt; }
input[type=checkbox], input[type=radio] { height: 12px; width: 12px; background-color: white; border: 1px solid gray; }
input[type=radio] { border-radius: 50%; }
input[type=text], input[type=password], input[type=file], select, openhtmltopdf-combo {
    height: 1.8em;
    width: 10em;
    background-color: white;
    border: 1px solid black;
    padding: 4px;
}
input[type=submit], button, input[type=reset] {
    background-color: white;
    border: 1px solid black;
    border-radius: 3px;
    padding: 4px;
    vertical-align: top;
}
select[multiple] { height: 8em; }
select > option, openhtmltopdf-combo > option { display: none; }
input[type=submit]::before, input[type=reset]::before { content: attr(value); height: 1.8em; display: inline-block; }
button { height: 1.8em; }
textarea { width: 10em; height: 5em; padding: 4px; background-color: white; border: 1px solid black; }
/* Generate a hidden box for hidden controls, so we can process them in paint background, like all the other form controls. */
input[type=hidden] { width: 1px; height: 1px; position: absolute; background-color: transparent; }
big             { font-size: 1.17em }
small           { font-size: .83em }
s, strike, del  { text-decoration: line-through }
ol, ul, dir,
menu            { padding-left: 40px }
dd              { margin-left: 40px }
ul              { list-style-type: disc }
ol              { list-style-type: decimal }
ol ul, ul ol,
ul ul, ol ol    { margin-top: 0; margin-bottom: 0 }
u, ins          { text-decoration: underline }
br:before       { content: "\A"; white-space: pre-line; }
/* :before, :after { white-space: pre-line } */
center          { text-align: center }
a:link          { cursor: pointer }
a:link, a:visited { text-decoration: underline }
/*
:focus          { outline: thin dotted invert }
*/

/*
@media print {
  h1            { page-break-before: always }
  h1, h2, h3,
  h4, h5, h6    { page-break-after: avoid }
  ul, ol, dl    { page-break-before: avoid }
}
*/

@page {
  margin: 0.5in;
}

/* Flying Saucer overrides, usually compensate for unimplemented stuff */

/* don't handle all replaced things yet, besides xml should do this via entities!*/
img {
    display: inline-block;
    border-width: 1px 1px 1px 1px;
    margin: 0px;
    padding: 0px;
}

a {
    color: #0000ff;
}

h5, h6, b, strong { 
  font-weight: bold; 
}

/* Match default behavior of Firefox and Opera */
pre {
  margin: 1em 0;
}

/* Various table related rules taken from Firefox's html.css */
table {
  display: table;
  border-spacing: 2px;
  border-collapse: separate;
  margin-top: 0;
  margin-bottom: 0;
  text-indent: 0;
}

/*
table[rules]:not([rules="none"]) {
  border-collapse: collapse;
}
*/
   
/* caption inherits from table not table-outer */  
caption {
  display: table-caption;
  text-align: center;
}

table[align="center"] > caption {
  margin-left: auto;
  margin-right: auto;
}

table[align="center"] > caption[align="left"] {
  margin-right: 0;
}

table[align="center"] > caption[align="right"] {
  margin-left: 0;
}

tr {
  display: table-row;
  vertical-align: inherit;
}

col {
  display: table-column;
}

colgroup {
  display: table-column-group;
}

tbody {
  display: table-row-group;
  vertical-align: middle;
}

thead {
  display: table-header-group;
  vertical-align: middle;
  page-break-inside: avoid;
}

tfoot {
  display: table-footer-group;
  vertical-align: middle;
}

/* for XHTML tables without tbody */
table > tr {
  vertical-align: middle;
}

td { 
  display: table-cell;
  vertical-align: inherit;
  text-align: inherit; 
  padding: 1px;
}

th {
  display: table-cell;
  vertical-align: inherit;
  font-weight: bold;
  padding: 1px;
}

/* Modified version of equivalent FF definitions */

sub {
  vertical-align: sub;
  font-size: 0.83em;
  line-height: normal;
}

sup {
  vertical-align: super;
  font-size: 0.83em;
  line-height: normal;
}

hr {
  display: block;
  border: 1px inset;
  margin: 0.5em auto 0.5em auto;
}

hr[size="1"] {
  border-width: 1px 0 0 0;
  border-style: solid none none none;
}

/* Quirk: give form margin for compat (b=41806) (from Firefox) */
form{
 margin: 0 0 1em 0;
}

bdi {
 direction: auto;
}
[dir=ltr], bdi[dir=ltr] {
 direction: ltr;
}
[dir=rtl], bdi[dir=rtl] {
 direction: rtl;
}
[dir=auto] {
 direction: auto;
}
